Discrete multitone transmission and reception

ABSTRACT

Discrete multitone transmission assigns bits to tones for transmission. The bits are assigned using permutations of bits and tones that cycle through a sequence of permutations in successive frames.

TECHNICAL FIELD

[0001] The invention relates to discrete multitone transmission andreception.

DESCRIPTION OF RELATED ART

[0002] Discrete multitone (DMT) transmission is used to transmit datathrough a link. For example, DMT transmission is used in asymmetricdigital subscriber line (ADSL) systems, where its use is specified bythe G.992 standard published by the International TelecommunicationsUnion (ITU).

[0003] In the transmission system specified by this standard, the inputbits are divided between a plurality of discrete “tones”, i.e.frequencies. Depending on the exact properties of the link between thetransmitter and the receiver, and various constraints, in particular asto output power, some tones are capable of transmitting a larger numberof bits than other tones. Accordingly, some of the tones are allocatedmore bits than other tones. The number of bits transmitted in each tonemay be stored in a bit allocation table. The table may be updated fromtime to time in order to adapt to changing link conditions.

[0004] A quadrature amplitude modulation (QAM) constellation point isgenerated for each tone, the QAM constellation points coding the bitsassigned to each tone. For example, the 16 possible QAM constellationpoints for coding 16=2⁴ bits are illustrated in FIG. 1. A larger orsmaller array of points is used depending on the number of bits assignedto any particular tone.

[0005] The plurality of constellation points are then converted into anoutput bitstream, generally by an inverse discrete Fourier transform.The output bitstream corresponding to each frame is known as a symbolwhich includes within it the individual tones and accordingly the QAMconstellation points coding the bits of each frame.

[0006] The output bitstream is then transmitted through an ADSL link,for example through the public service telephone network (PSTN), to areceiver which decodes the bitstream constellation points to regeneratethe transmitted frames.

[0007] In more detail, the decoding may use the steps of firstlycarrying out a discrete Fourier transform of the incoming data to obtaincomplex numbers representing the received QAM symbols. The phases andamplitude of the received QAM symbols will be affected by transmissionthrough the link, but the effects of this can be corrected for by afrequency equaliser, which may include an adaptive filter, to regeneratethe transmitted QAM symbols. These are then used to regenerate thetransmitted bitstream.

[0008] In addition, error correction circuitry is generally included toenable individual bits to be corrected.

[0009] However, the transmission links used remain susceptible to noiseand narrow band interference. The narrow band interference can causebursts of errors to enter the receiver. It may be difficult for errorcorrection circuitry to recover from these bit errors, which leads to aloss of data transmission. A particular problem occurs with controlframes, which need to be absolutely reliably transmitted.

[0010] Accordingly, there remains a need for improved discrete multitonemodem transmission.

SUMMARY OF INVENTION

[0011] According to a first aspect of the invention there is provided amethod of discrete multitone transmission of bits making up a pluralityof frames including: allocating a respective number of bits to each of aplurality of discrete tones; assigning the bits of each frame to thediscrete tones such that each discrete tone is assigned the allocatedrespective number of bits, wherein the permutation mapping the bits ofeach frame to each of the discrete tones cycles through a sequence ofdifferent permutations in successive frames; generating for each frame asymbol comprising a plurality of discrete tones moderated to transmitthe bits assigned to the respective tones; and transmitting thegenerated symbols.

[0012] In other words, the bits of the frame are scrambled andinterleaved in successive frames so that the each bit of the frame isnot, as in the present standard G.992, always assigned to the same tonebut is assigned to different tones in different frames.

[0013] In this way the robustness of data transport to narrow bandinterference may be improved. Often, different parts of a frame are usedto transmit different information and so narrow band interference caneffectively destroy transmission on one tone. By scrambling bits of theframe to different tones it is not always the same bits of the framethat are affected. This can greatly ease error correction.

[0014] The invention is of particular application to trellis coded bits.Trellis coding is susceptible to narrow band interference, and thissusceptibility may be reduced using the invention.

[0015] The invention also relates to a discrete multitone modem fortransmitting a stream of bits making up a plurality of frames,comprising: a tone generator for assigning the bits in each frame todiscrete tones such that each discrete tone is allocated a predeterminedrespective number of bits, wherein the permutation mapping the bits ofeach frame to each of the discrete tones cycles through a sequence ofdifferent permutations in different frames; a constellation pointgenerator for generating a constellation point for each tonerepresenting the assigned bits; and an inverse discrete Fouriertransform module for generating an output signal including a pluralityof discrete tones from the constellation points.

[0016] The invention also relates to corresponding methods and apparatusfor receiving the transmitted signals.

BRIEF DESCRIPTION OF THE DRAWINGS

[0017] For a better understanding of the invention, a specificembodiment of the invention will now be described, purely by way ofexample, with reference to the accompanying drawings, in which:

[0018]FIG. 1 illustrates 16 QAM constellation points that may be used toencode four bits;

[0019]FIG. 2 illustrates a transmitter, a receiver and a link accordingto an embodiment of the invention;

[0020]FIG. 3 is a flow diagram of a method in accordance with anembodiment of the inventions; and

[0021]FIG. 4 is a schematic diagram of bit allocation in accordance withan embodiment of the invention.

DETAILED DESCRIPTION

[0022] A data transmission system according to the invention isillustrated schematically in FIG. 2. The method used is illustrated inthe flow diagram of FIG. 3.

[0023] In general terms, a transmitter 1 transmits data through a link 5to a receiver 3. The link 5 is not noise-free, and the addition of noiseto the signal is illustrated schematically by noise source 7.

[0024] The transmitter 1 receives (step 51) a stream of bits 9 fortransmission. The stream of bits is divided into a plurality of frames11, illustrated in FIG. 4. The stream of bits is divided into the framesby a previous stage. In an alternative, the frames may be imposed on abit stream in the transmitter.

[0025] These bits are coded (step 53) using an error correcting code, inmodule 18. Trellis coding is used in the described embodiment. Intrellis coding, the bits of one frame or symbol are selected, not fromall possible bit combinations, but from a subset determined withreference to the previous transmitted bits, in such a way that errors inreceived bits can be identified and corrected. Trellis coding is wellknown and will not be described further. The skilled person will beaware of many other suitable forms of error-correcting codes, such asReed-Solomon codes, any of which may be used in combination with theinvention.

[0026] The data is sent through the link 5 using a plurality of discretetones, i.e. frequencies. Each of the tones may carry a different numberof bits, which are recorded in a bit allocation table 13. The bitallocation table records the number of bits b(i) for the ith tone, wherei is a positive integer which can vary from 1 to n, n being the numberof discrete tones.

[0027] The bit allocation is shown schematically in FIG. 4, whichillustrates a plurality of tones 15, of varying capacity. In thesimplified example, the first tone carries 2 bits, the second tonecarries 6 bits, the third tone 5 bits and the fourth tone carries 3bits. In practice, a larger number of tones may be used. For example,the current ADSL standard G.992 published by the InternationalTelecommunications Union (ITU) uses 255 tones.

[0028] The number of bits carried by each tone depends on the noise inthe channel at the frequency of that channel, and is subject toconstraints such as the maximum total power to be transmitted throughthe channel. The number of bits that the channel is able to carry variesfrom time to time. Accordingly, the bit allocation table 13 may beupdated periodically, for example daily, hourly or indeed at anyconvenient frequency. Methods of determining the number of bits that maybe transmitted on each tone are well known and will not be describedfurther.

[0029] The bit allocation table 13 is provided in a tone generator 17which receives the incoming bit stream. An assignment module 19 in thetone generator 17 assigns the bits to the tones.

[0030] The bits are assigned to the tones as follows. Firstly, thepermutation used for the frame is obtained (step 55) from scrambler 21which outputs a different permutation each time it is triggered. Thescrambler is triggered once per frame in order that there is a newpermutation for each frame. The permutation in the jth frame may beconsidered to be an ordered set of integers [n_(j1), n_(j2), n_(j3), . .. n_(jn)]. [n_(j1), n_(j2), n_(j3), . . . n_(jn)] thus represents thepermutation of the first n positive integers [1, 2, 3 . . . n] for thejth frame.

[0031] A loop is initialised (step 57) with k=1. Then, the loop isrepeated with the next b(n_(jk)) bits of the frame being assigned (step59) to tone k in order, and k is incremented (step 61) until k=n and thefinal bits of the frame are assigned. In this way, the bits are assignedin order from the start of the frame starting with the first tone n_(j1)of the permutation of the jth frame followed by the second tone n_(j2)and so on until n_(jn) is reached.

[0032] In the first frame, the bits are assigned to the tonessequentially in the first predetermined permutation. If the first toneof the first permutation is to be the tenth tone (n₁₁=10) the bitallocation table reports that b(10) bits are to be assigned to the tone,and the first b(10) bits of the frame are allocated to that tone. If thenext tone to be used is the forty seventh tone (n₁₂=47), the nextcorresponding number of bits b(47) of the frame are allocated to theforty seventh tone. This is repeated until all of the bits of the frameare allocated. This method of allocation can be represented as apermutation of the integers [1, 2, 3 . . . n], where the integer in eachposition represents the tone number of the corresponding bits of eachframe. Thus, if the first bits are assigned to tone number 10 and thesecond bits to tone number 47, the permutation begins [10, 47, . . . ].

[0033] In the simple example shown in FIG. 4, in the first frame thefirst 2 bits are assigned to the first tone, the next 6 bits areassigned to the second tone, then the next 5 bits are assigned to thethird tone and the final 3 bits are assigned to the fourth and lasttone. This can be represented as the permutation [n₁₁, n₁₂, n₁₃,n₁₄]=[1, 2, 3, 4 ].

[0034] In the next frame, the permutation between bits and tones ischanged. Thus, in the example of FIG. 4, the first bits are assigned tothe second tone (i=2). Since the number of bits allocated to the secondtone (b(2)) is 6, the first 6 bits are assigned to that tone. The nexttone used is the first tone. Since the first tone used only carries 2bits, the next 2 bits are assigned to the first tone, and so on untilall the bits of the second frame are allocated. This can be representedas the permutation [n₂₁, n₂₂, n₂₃, n₂₄]=[2, 1, 4, 3].

[0035] A different permutation of bits and tones is then used for thethird, fourth and subsequent frames. In the third frame, theillustration shows the permutation [n₃₁, n₃₂, n₃₃, n₃₄]=[3, 2, 1, 4].

[0036] It is preferred to use a cycle of all possible permutations ofbits and tones in the successive frames before returning to the start ofthe cycle and repeating. Thus, in the simple example of FIG. 4 theallocation of bits cycles through each of the twenty four permutationsof [1, 2, 3, 4] before repeating the cycle.

[0037] The permutations are generated using a scrambler 21 whichoperates by generating a sequence of permutations in a predeterminedmanner which can be unscrambled using a like scrambler at the other end.Such scramblers are known per se and will not be described further.

[0038] Alternatively, for a simple example the permutations can simplybe stored in a look-up table in the tone generator. For larger numbersof tones, it is generally more convenient not to simply store all thepermutations in a look up table but to generate them deterministically.For example, the tones may be generated by a psuedo-random number usinga known seed.

[0039] The bits assigned to respective tones are passed to aconstellation generator 23 which generates (step 63) a constellationpoint representing the bits assigned to each tone. The number ofconstellation points to be chosen from will depend on the number of bitsallocated to each tone. For example, if 6 bits are allocated to a tonethen there will need to be 2⁶=64 constellation points. In the example,quadrature amplitude modulation is used, but the skilled person willreadily be able to select a suitable method of generating theconstellation points from the many known methods, which includeamplitude phase keying, and quadrature phase shift keying. Thequadrature amplitude modulation that is used is a specificimplementation of amplitude phase shift keying in which the data pointsused are arranged in a square array.

[0040] The constellation points are passed to an inverse discreteFourier transform module 25 which carries out an inverse discreteFourier transform (step 65) and outputs (step 67) the transformed dataon output 27 to the channel 5. Inverse discrete Fourier transforms andmodules for carrying out such transforms are well known and will not bedescribed further here.

[0041] The data output is passed through the channel 5 to the receiver3. In the receiver, a discrete Fourier transform module 31 carries out adiscrete Fourier transform (step 69) on the data. Discrete Fouriertransforms are well known and will not be described further here.

[0042] A frequency equaliser 33 compensates for effects in the channelby shifting (step 71) the phase of the received constellation points tocompensate for any phase shift or amplitude loss in the channel. Suchsystems are well known.

[0043] A decoder 35 generates (step 73) the received bits from thereceived constellation points. The received bits must be correctlyassigned to the bits in the frame by undoing the mapping of bits totones carried out in the tone generator 17. Since the sequence ofpermutation of bits to tones is predetermined, and shared by receiverand transmitter, this can be readily accomplished.

[0044] In a modification of the invention, if the sequence ofpermutations is not predetermined, then an initial message can be passedfrom transmitter to receiver to set-up the communication and to transmitinformation regarding the sequence of tones.

[0045] The use of variable tone ordering allows a much flatter powerspectral density in dynamic power during periods when the link is notfully loaded if as much zero as possible is transmitted during suchperiods.

[0046] The variable tone ordering increases the robustness of the datatransport to narrow band interference. It is common for transmitted datato contain certain parts in certain parts of each frame. For example,control data may often occur in predetermined parts of each frame.Furthermore, where a number of different signals are being transmittedit is common to assign each signal a certain part of the frame. Noise isfrequently narrow band and therefore in prior arrangements withoutvariable tone ordering such noise will always affect the same part ofthe frame and so the same part of the signal. This can make it verydifficult for error correction techniques to recover from the effects ofnoise. When using variable tone ordering according to the invention theeffects of the noise are effectively spread over the whole of the frameand this can make it much easier to correct for using conventionaltechniques.

[0047] In the preferred embodiment of the invention, trellis codingoccurs in the transmitter before the bits are assigned to tones. In thisway subsequent bits that are trellis coded using bits output at onefrequency are not output at the same frequency or tone. This increasesthe robustness of the trellis coding to narrow band interference bylargely preventing bursts of errors entering the decoder and reducingits correction capability.

[0048] The invention is not limited to the arrangements described abovebut modifications will be readily apparent to the skilled person. Forexample, although the invention has been described with reference to atransmitter and a receiver both ends of the data link may be capable ofboth transmitting and receiving.

[0049] The invention is not just suitable for ADSL transmission but mayalso be used in other areas, such as VDSL, digital video transmission,or indeed any transmission of data divided or capable of being dividedinto frames.

[0050] In a modification of the invention, the individual bits are notassigned in groups to the tones but are assigned individually. Thus, thefirst bit may be assigned to tone 47, the second to tone 68, and so onuntil each of the bits of the frame are assigned. In this case, thepermutations will be of m integers where m is the number of bits in eachframe.

[0051] For speed, the invention may preferably be implemented indedicated hardware for carrying out the method described. The hardwaremay include discrete components; alternatively the components may beintegrated onto a single integrated circuit and or hybrid module. Thecoding and decoding functions may alternatively be implemented on ageneral purpose computer programmed to carry out the method.

1. A method of discrete multitone transmission of bits making up aplurality of frames including: allocating a respective number of bits toeach of a plurality of discrete tones; assigning the bits of each frameto the discrete tones such that each discrete tone is assigned theallocated respective number of bits, wherein the permutation mapping thebits of each frame to each of the discrete tones cycles through asequence of different permutations in successive frames; generating foreach frame a symbol comprising a plurality of discrete tones modulatedto transmit the bits assigned to the respective tones; and transmittingthe generated symbols.
 2. A method of data transmission according toclaim 1 wherein a different permutation is used in each successiveframe.
 3. A method of data transmission according to claim 1 wherein apredetermined cyclic sequence of permutations is used in successiveframes.
 4. A method of data transmission according to claim 1 whereinthere are n discrete tones, where n is an integer; the ith tone isallocated to transmit b(i) bits, where b(i) is an independent positiveinteger for each of the n tones; and in the jth frame each consecutiveb(n_(jk)) bits starting from the first bit of the frame are assigned tothe n_(jk)th tone in sequential order as k increases from 1 to n, where[n_(j1), n_(j2), n_(j3), . . . n_(jn)] is a permutation of the first npositive integers [1, 2, 3 . . . n].
 5. A method of data transmissionaccording to claim 4 wherein the sequence of permutations cycles from aninitial permutation through all possible permutations of the first nintegers [1,2,3 . . . n] in successive frames before returning to theinitial permutation to commence the cycle again.
 6. A method of datatransmission according to any preceding claim including for each of thediscrete tones generating for each frame an amplitude phase keyedconstellation point representing the bits allocated to the tone; andusing an inverse discrete Fourier transform to generate a transmittedoutput signal from the amplitude phase keyed constellation points.
 7. Amethod of data transmission according to claim 6 wherein the amplitudephase keyed constellation points are quadrature amplitude modulationconstellation points.
 8. A method of data transmission according to anypreceding claim wherein the bits are trellis coded.
 9. A discretemultitone modem for transmitting a stream of bits making up a pluralityof frames, comprising: a tone generator for assigning the bits in eachframe to discrete tones such that each discrete tone is allocated apredetermined respective number of bits, wherein the permutation mappingthe bits of each frame to each of the discrete tones cycles through asequence of different permutations in different frames; a constellationpoint generator for generating a constellation point for each tonerepresenting the assigned bits; and an inverse discrete Fouriertransform module for generating an output signal including a pluralityof discrete tones from the constellation points.
 10. A discretemultitone modem according to claim 9 for use with n discrete tones,where n is an integer, wherein the tone generator includes a bitallocation table allocating b(i) bits to the ith tone, where b(i) is anindependent positive integer for each of the n tones; and the tonegenerator assigns in the jth frame the first b(n_(j1)) bits of the bitstream to the n_(j1)th tone, and each subsequent b(n_(jk)) bits areassigned to the n_(jk)th tone in sequential order as k increases from 1to n, where [n_(j1), n_(j2), n_(j3), . . . n_(jn)] is a permutation ofthe first n positive integers [1, 2, 3 . . . n].
 11. A discretemultitone modem according to claim 10 wherein the sequence ofpermutations cycles from an initial permutation through all possiblepermutations of the first n integers [1, 2, 3 . . . n] in successiveframes before returning to the initial permutation to commence the cycleagain.
 12. A method of receiving data divided into frames, the databeing generated by assigning the bits of each frame to discrete tonesand mapping the bits of each frame to the discrete tones by cyclingthrough a predetermined sequence of different permutations in successiveframes; wherein the method includes the steps of: receiving a sequenceof symbols, each symbol frame including a respective number of bits oneach of a plurality of discrete tones; decoding the transmitted bits;and inverting the predetermined permutation corresponding to each frameto regenerate the transmitted bits of the frames.
 13. A method accordingto claim 12 wherein there are n discrete tones, where n is an integer,the ith tone being allocated to transmit b(i) bits, where b(i) is anindependent positive integer for each of the n tones; the methodcomprising the steps of obtaining for each frame (j) the permutation[n_(j1), n_(j2), n_(j3), . . . n_(jn)] of the first n positive integers[1, 2, 3 . . . n], and regenerating the frame by taking the firstb(n_(j1)) bits of the frame from the decoded n_(j1)th tone, and thesubsequent bits in order from the decoded n_(j2)th tone, the n_(j3)thtone until the last bits are taken from the n_(jn)th tone.
 14. Adiscrete multitone modem for receiving a stream of symbols representinga plurality of frames, comprising: a discrete Fourier transform modulefor generating constellation points corresponding to discrete tonescontained in each received symbol; a tone decoder for making up a framesuch that each discrete tone is allocated the respective number of bits,wherein the allocation of bits to discrete tones cycles through asequence of different permutations in different frames, and forgenerating a constellation point representing the allocated bits foreach tone; and an inverse discrete Fourier transform module forgenerating an output signal including a plurality of discrete tones fromthe constellation points.
 15. A method of data transfer of bits makingup a plurality of frames across a link, comprising allocating arespective number of bits to each tone; assigning the bits of each frameto the discrete tones such that each discrete tone is assigned theallocated respective number of bits, wherein the permutation mapping thebits of each frame to each of the discrete tones cycles through asequence of different permutations in successive frames; generating foreach frame a symbol comprising a plurality of discrete tones modulatedto transmit the bits assigned to the respective tones; transmitting thegenerated symbols across a link; receiving the transmitted symbols;decoding the transmitted bits in each tone; and inverting the mapping ofbits to tones corresponding to each frame to regenerate the originalframes from the decoded bits of each tone.
 16. A method according toclaim 15 wherein there are n discrete tones, where n is an integer, theith tone being allocated to transmit b(i) bits, where b(i) is anindependent positive integer for each of the n tones; and the step ofmapping tones to bits assigns in the jth frame the first b(n_(j1)) bitsof the frame to the n_(j1)th tone, and each subsequent b(n_(jk)) bitsare assigned to the n_(jk)th tone in sequential order as k increases ton, where [n_(j1), n_(j2), n_(j3), . . . n_(jn)] is a permutation of thefirst n positive integers [1, 2, 3 . . . n].